package day7;

public class 最长数字串 {
	
	//使用双指针进行模拟：
	//使用指针遍历整个字符串，如果第一次遇到数字，定义指针j,指针j一直向后走，直到遇到非数字停止，
	//计算长度，之后i来的j的位置，继续遍历；
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		// 注意 hasNext 和 hasNextLine 的区别
		while (in.hasNext()) { // 注意 while 处理多个 case
			String str=in.next();
			char[] arr=str.toCharArray();
			int begin=-1,len=0;
			int n=arr.length;
			for(int i=0;i<n;i++) {
				//第一次遇到数字
				if(arr[i]>='0'&&arr[i]<='9') {
					//定义指针j，往后遍历，直到遇到非数字
					int j=0;
					while(j<n&&arr[j]>='0'&&arr[j]<='9') {
						j++;
					}
					if(len<j-i) {
						len=j-i;
						begin=i;
					}
					//更新i的位置
					i=j;
				}
			}
			System.out.println(str.substring(begin,begin+len));
		}
	}
	
	
	
	
	//自己写的
	public static void main1(String[] args) {
		Scanner in = new Scanner(System.in);
		// 注意 hasNext 和 hasNextLine 的区别
		while (in.hasNext()) { // 注意 while 处理多个 case
			String str=in.next();
			int l=0,r=-1;
			int p1=0,p2=0;
			while(p2<str.length()){
				if(str.charAt(p2)>='0'&&str.charAt(p2)<='9'){
					p2++;
					if(p2==str.length()-1&&r-l+1<p2-p1+1){
						l=p1;
						r=p2;
					}
				}
				else{
					if(r-l+1<p2-p1){
						l=p1;
						r=p2-1;
					}
					p2++;
					p1=p2;
				}
			}
			if(l==0&&r==-1){
				System.out.println(str);
			}
			else
				System.out.println(str.substring(l,r+1));
		}
	}
}
